package ThreadDemo2;

/**
 * @Author: ylc
 * @Description:实现Runnable接口
 * @Date Created in 2022-04-20 11:02
 */
public class RunnableImpl implements Runnable{
    /*
        实现Runnable接口比继承Thread类所具有的优势：
            1. 适合多个相同的程序代码的线程去共享同一个资源。
            2. 可以避免java中的单继承的局限性。
                类继承了Thread就不能继承其他的类。实现了Runnable接口还可以继承其他的类，实现其他接口
            3. 增加程序的健壮性与可扩展性，实现解耦操作，代码可以被多个线程共享，代码和线程独立。
                实现Runnable接口的方式，把设置线程任务和开启新线程进行了分离
            4. 线程池只能放入实现Runnable或Callable类线程，不能直接放入继承Thread的类
     */
    @Override
    public void run() {
        for (int i = 0; i < 20; i++) {
            System.out.println(Thread.currentThread().getName() + " " + i);
        }
    }
}
